# lambda 参数 : 返回值
# f = lambda a,b=3 : a + 10 + b
# print(f(1))



# map 做一些共性操作(将一个数字列表中的所有数字进行平方)  映射!

def test(item):
    return item / 2
# 1. test函数的执行次数 等于 列表的元素个数
# 2. test函数在每次调用时,都会被传入参数,这个参数是列表中的每一个值
# 3. map函数返回的列表中的元素 来自于test函数的每次的执行结果(返回值)
result = map(test,[1,2,300,4,5])
result = list(result)
print(result)

# filter 过滤 (将一个数字列表中的所有奇数过滤出来)
list_01 = [1,2,3,4,5,6,7,8,9]
def test(item):
    return item % 2 == 1
# 1. test函数的执行次数 等于 列表的元素个数
# 2. test函数在每次调用时,都会被传入参数,这个参数是列表中的每一个值
# 3. filter函数返回的列表中的元素来自于test_01 当每次test返回True 当前被轮询的数据被挑中返回到result中
result = filter(test,list_01)
result = list(result)
print(result)

# 简化代码
print(list(filter(lambda item : item % 2 == 1,[1,2,3,4,5,6,7,8,9])))

